home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CreatingGames / Utilities / Misc / GMS / GMSDev / EModules / system / modules.e < prev    next >
Encoding:
Text File  |  1997-11-30  |  2.8 KB  |  94 lines

  1. /*
  2. **  $VER: modules.e V0.9B
  3. **
  4. **  (C) Copyright 1996-1997 DreamWorld Productions.
  5. **      All Rights Reserved.
  6. **
  7. */
  8.  
  9. OPT MODULE
  10. OPT EXPORT
  11. OPT PREPROCESS
  12.  
  13. MODULE 'dpkernel/dpkernel','system/register','files/files','files/segments'
  14.  
  15. /*****************************************************************************
  16. ** Module Object.
  17. */
  18.  
  19. CONST MODVERSION  = 1,
  20.       TAGS_MODULE = $FFFB0000+ID_MODULE
  21.  
  22. OBJECT module
  23.   head[1]   :ARRAY OF head    /* [00] Standard header */
  24.   number    :INT              /* [12] Number of the associated module */
  25.   modbase   :LONG             /* [14] Function jump table */
  26.   segment   :PTR TO segment   /* [18] Segment pointer */
  27.   tabletype :INT              /* [22] */
  28.   empty     :INT              /* [24] */
  29.   emp       :LONG             /* [26] Size of the function table */
  30.   version   :LONG             /* [30] Version of the module */
  31.   revision  :LONG             /* [34] Revision of the module */
  32.   table     :PTR TO modheader /* [38] Header */
  33.   name      :LONG             /* [42] Name of the module */
  34. ENDOBJECT
  35.  
  36. CONST MODA_NUMBER    = TWORD OR 12,
  37.       MODA_TABLETYPE = TWORD OR 22,
  38.       MODA_VERSION   = TLONG OR 30,
  39.       MODA_REVISION  = TLONG OR 34,
  40.       MODA_NAME      = TAPTR OR 42
  41.  
  42. /****************************************************************************/
  43.  
  44. OBJECT modentry
  45.   next     :PTR TO modentry    /* Next module in list */
  46.   prev     :PTR TO modentry    /* Previous module in list */
  47.   segment  :PTR TO segment     /* Module segment */
  48.   header   :PTR TO modheader   /* Pointer to module header */
  49.   moduleid :INT                /* Module ID */
  50.   empty    :INT                /* Reserved */
  51.   name     :PTR TO CHAR        /* Name of the module */
  52. ENDOBJECT
  53.  
  54. OBJECT lvofunction
  55.   jump :INT
  56.   code :LONG
  57. ENDOBJECT
  58.  
  59. /*****************************************************************************
  60. ** Module file header.
  61. */
  62.  
  63. CONST MODULE_HEADER_V1 = $4D4F4401
  64.  
  65. OBJECT modheader
  66.   version        :LONG
  67.   init           :LONG
  68.   close          :LONG  
  69.   expunge        :LONG
  70.   tabletype      :INT
  71.   opencount      :INT
  72.   author         :PTR TO CHAR
  73.   funclist       :PTR TO LONG  /* Pointer to function list */
  74.   cpunumber      :LONG         /* CPU that this module is compiled for */
  75.   modversion     :LONG         /* Version of this module */
  76.   modrevision    :LONG         /* Revision of this module */
  77.   mindpkversion  :LONG         /* Minimum DPK version required */
  78.   mindpkrevision :LONG         /* Minimum DPK revision required */
  79.   open           :LONG
  80.   modbase        :LONG         /* Generated function base for given CPU */
  81.   copyright      :PTR TO CHAR
  82.   date           :PTR TO CHAR
  83.   name           :PTR TO CHAR
  84.   dpktable       :INT
  85. ENDOBJECT
  86.  
  87. CONST CPU_68000 = 1,
  88.       CPU_68010 = 2,
  89.       CPU_68020 = 3,
  90.       CPU_68030 = 4,
  91.       CPU_68040 = 5,
  92.       CPU_68060 = 6
  93.  
  94.